草庐IT

Android SurfaceView Canvas 用线程绘制

全部标签

windows - 绘制自定义标题(框架)时如何在 alt+tab 切换器中绘制标题?

我需要画一个自定义的标题栏,这里我自己画了窗口标题。HDChdc=GetWindowDC(hwnd);if(hdc&&prepareTitleBarDC(getWidth(),27)){SetWindowText(hwnd,_T(""));DefWindowProc(hwnd,WM_NCPAINT,wParam,lParam);m_titleBar->setSize(getWidth(),27);m_titleBar->setBkColor(SkColorSetARGB(0x00,0x00,0x00,0x00));m_titleBar->paintEvent(m_pTitleBarDC

c++ - MFC GUI 应用程序重写 - 线程、消息传递、文档/ View 等。需要建议

我正在重写一个有很多问题的MFC应用程序。主要问题是不稳定。它是一个GUI应用程序,通过USB与外部模块通信。因此,它通过使用计时器每n毫秒运行一次通信堆栈。然而,系统调用不允许在计时器回调中使用,因此程序不稳定,因此经常崩溃和挂起。所以我必须重写应用程序以在后台线程中运行通信堆栈。这里的另一个问题是数据没有完全与表示分离,如果我使用另一个线程,我必须确保我保护共享资源。所以,主要是通信栈会通知应用程序有新的数据。这应该由工作线程处理。它运行通信堆栈,处理新消息,然后在更新数据结构时锁定数据结构,然后回复模块。然后它向主线程发送一strip有PostMessage的消息以更新GUI。但

c# - 屏幕保护程序如何在 Windows 8 中继续在桌面上绘制?

我正在VS2010上用C#.NET4.0开发一个屏幕保护程序,它需要在实际显示屏幕之前做一些处理(相当复杂的数据库访问)。这很好,因为用户不知道这个处理正在进行,然后当一切准备就绪时,全屏表单就会启动。也就是说,除非我们在Windows8上运行。在Microsoft社区(http://answers.microsoft.com/en-us/windows/forum/windows_8-desktop/bubbles-screensaver-has-black-background/e0807324-5ca6-4abe-b6ba-716848b41ff5?page=4)上搜索后发现Wi

windows - 线程命令在 WInDbg 中不起作用

尝试在WinDbg中执行基于线程的命令。安装程序是具有XP的VMWare,主机是Win7。基于this,试图调试应用程序挂起。但是无法从中获取任何信息。对于简单的tilda(~)它给出了语法错误。我需要做一些不同的设置才能执行这些命令吗?无论如何,这些“特殊”吗?因为我可以使用其他命令。基本上我希望WinDbg让我监控线程的状态?例如等待响应、发送请求或类似的事情。 最佳答案 ~仅为用户模式调试更改线程上下文。对于krnelmkode调试,请参阅帮助:。线。过程!线!过程 关于windo

windows - 线程数和处理器核心数有什么关系?

我正在编写一个基于线程池(IOCP)的服务器应用程序。但是不知道多少线程合适。线程数与处理器核心数有关吗? 最佳答案 如果您的工作项从不阻塞,请使用threads=cores。如果您的线程永远不需要取消调度,您可以通过为每个核心创建一个线程来最大化所有核心。如果您的工作项有时会阻塞(如果您想充分利用IOCP,它们不应该做太多),您需要更多线程。您需要测量多少。 关于windows-线程数和处理器核心数有什么关系?,我们在StackOverflow上找到一个类似的问题:

java - 使用 Jpcap 的线程 "main"java.lang.UnsatisfiedLinkError 中的异常

我在我的java程序中使用jpcap。我尝试了一切让它运行,但没有任何效果。给出异常::Exceptioninthread"main"java.lang.UnsatisfiedLinkErrorC:\ProgramFiles\Java\jdk1.7.0\bin\Jpcap.dll:Can'tfinddependentlibraries我正在使用netbeans7、JDK7、Windows7所有32位 最佳答案 如果您完全确定您的操作系统、Java和DLL都是32位的,那么您可能缺少libpcap库的Windows实现。请尝试以下步骤

python - 在 Windows 上隐藏 python 进程和线程输出

我有一个运行python进程的WindowsCMD。该进程同时使用python多处理和线程运行更多进程。该进程的所有打印输出都进入同一个CMD窗口。有什么方法可以隐藏所有进程输出?我尝试使用下一个CMD命令来执行此操作,但它没有隐藏输出。start"time_tester"C:\Windows\system32\cmd.exe/kC:\Python26\python.exetime_test.py>nul 最佳答案 将/b添加到CMD命令并将输出重定向到nul(>nul)解决了我的问题。这样,所有进程和子进程都将输出返回到同一个CM

c++ - 使用父窗口在对象中启动线程

我有一些旧的MFC代码,其中一个对象继承了CDialogclassMYCLASS:publicCDialog使用标准构造函数MYCLASS(CWnd*pParent=NULL);这个类的每个实例都从主窗口初始化,OverriddenCreate函数创建一个无模式对话框BOOLMYCLASS::Create(CWnd*pParentWnd,longiPort){//createthedialoguethatIrequired!CDialog::Create(MYCLASS::IDD,pParentWnd);//otherstuff....}然后实现它自己的WindowProc。LRESU

linux - 为什么现代操作系统(Linux、Windows、Solaris)要实现一对一线程模型?

阅读我的操作系统课教科书,即操作系统概念,第8版,作者是Silberschatz、Galvin和Gagne,我在有关线程的章节中发现了一些有趣的东西。在介绍线程模型时,他们从:多对一-声明本质上这并不能提供真正的并发接下来他们移动到:一对一-声明这提供了真正的并发性,但由于创建过多线程的开销而受到线程数量限制。最后,他们转向看似显而易见的解决方案:多对多这显然是两全其美。但是,如果您在一对一部分注意到,它声明Linux与Windows系列操作系统一起实现一对一模型。在最后一张图片之后的书中...如果多对多是最好的解决方案,为什么Linux、Windows和Solaris(可能还有其他)

windows - 为什么另一个线程中的阻塞 IO 会阻止 CreateWindowEx() 返回

我有一个非常简单的Windows控制台应用程序,它首先创建一个线程来处理stdin上的输入。它使用main()中的CreateThread()创建线程,线程做的第一件事是调用getchar()并阻塞,等待。然后main()使用RegisterClass()注册一个窗口类,并调用CreateWindowEx()创建一个不可见的消息窗口。但是CreateWindowEx()永远不会返回。如果我删除线程中的getchar()并将其替换为while(1)Sleep(1000);,一切正常。如果我将Sleep(1000);添加到线程函数的开头,CreateWindowEx()调用会成功,但随后线